You are on page 1of 5

fluid properties -> page load coding

============================

protected sub page_load(byval sender as object, byval e as system.eventargs)


handles me.load
me.treeview_menu1.menutable = ""
me.treeview_menu1.menunumber = 10 ' highlighting fluid properties
menu
end sub

user controls -> teeview_menu


========================
imports system.data
imports system.data.sqlclient

partial class user_controls_treeview_menu


inherits system.web.ui.usercontrol
private menutablename as string = ""
private menuid as int32 = 0
private menuparentid as int32 = 0
private root as treenode
dim mtable as datatable = new datatable()

public property menutable() as string


get
return menutablename
end get
set(byval value as string)
if value <> nothing then
menutablename = value
end if
end set
end property

public property menunumber() as string


get
return menuid
end get
set(byval value as string)
if value <> nothing then
menuid = value
end if
end set
end property

public property menuparentnumber() as string


get
return menuparentid
end get
set(byval value as string)
if value <> nothing then
menuparentid = value
end if
end set
end property
protected sub page_load(byval sender as object, byval e as system.eventargs)
handles me.load
me.createdatatable()
me.filltree()

dim treenode as new system.web.ui.webcontrols.treenode


for each treenode in me.treeviewmenu.nodes()
if treenode.value = me.menunumber then
treenode.selected = true
else
treenode.selected = false
end if
next
me.treeviewmenu.expandall()
end sub

private sub filltree()


me.treeviewmenu.nodes.clear()

for i as integer = 0 to mtable.rows.count - 1


dim root as treenode
root = new treenode()
if mtable.rows(i).item(2) = 0 then
root.text = mtable.rows(i).item(1)
root.value = mtable.rows(i).item(0)
root.navigateurl = mtable.rows(i).item(3)
root = create_child(root, mtable.rows(i).item(0))
me.treeviewmenu.nodes.add(root)
end if
next
end sub

private function create_child(byval parent as treenode, byval menuno as


integer) as treenode
dim childnode as treenode
dim rowcount as integer = 0
for k as integer = 0 to mtable.rows.count - 1
if mtable.rows(k).item(2) = menuno then
rowcount = rowcount + 1
end if
next
if rowcount = 0 then
return parent
else
for k as integer = 0 to mtable.rows.count - 1
if mtable.rows(k).item(2) = menuno then
childnode = new treenode()
childnode.text = mtable.rows(k).item(1)
childnode.value = mtable.rows(k).item(0)
childnode.navigateurl = mtable.rows(k).item(3)
parent.childnodes.add(childnode)
if menuid = mtable.rows(k).item(0) then
childnode.selected = true
end if
create_child(childnode, mtable.rows(k).item(0))
end if
next
return parent
end if
end function

protected sub treeviewmenu_prerender(byval sender as object, byval e as


system.eventargs) handles treeviewmenu.prerender
'me.treeviewmenu.collapseall()
end sub

function doexpand(byval menuid as integer, byval nodecollection as


system.web.ui.webcontrols.treenodecollection) as
system.web.ui.webcontrols.treenodecollection
dim treenode as new system.web.ui.webcontrols.treenode
for each treenode in nodecollection
if treenode.value = menuid then
treenode.expand()
return treenode.childnodes
end if
next
end function

private sub createdatatable()


if session("menudb") is nothing then
mtable.columns.add(new datacolumn("menuid", gettype(decimal)))
mtable.columns.add(new datacolumn("text", gettype(string)))
mtable.columns.add(new datacolumn("parentid", gettype(decimal)))
mtable.columns.add(new datacolumn("navigateurl", gettype(string)))
session("menudb") = mtable
else
mtable = ctype(session("menudb"), datatable)
end if
mtable.clear()

dim dbrow as datarow

' begin main menu


dbrow = mtable.newrow()
dbrow(0) = 1
dbrow(1) = "data input module"
dbrow(2) = 0
dbrow(3) = ""
mtable.rows.add(dbrow)
dbrow = mtable.newrow()
dbrow(0) = 2
dbrow(1) = "check input data"
dbrow(2) = 0
dbrow(3) = "../check_input_data.aspx"
mtable.rows.add(dbrow)
'dbrow = mtable.newrow()
'dbrow(0) = 3
'dbrow(1) = "thermal analysis module"
'dbrow(2) = 0
'dbrow(3) = "../construction.aspx"
'mtable.rows.add(dbrow)
dbrow = mtable.newrow()
dbrow(0) = 4
dbrow(1) = "display module"
dbrow(2) = 0
dbrow(3) = "../display_module.aspx"
mtable.rows.add(dbrow)
dbrow = mtable.newrow()
dbrow(0) = 15
dbrow(1) = "data import"
dbrow(2) = 0
dbrow(3) = "../data_import.aspx"
mtable.rows.add(dbrow)
dbrow = mtable.newrow()
dbrow(0) = 16
dbrow(1) = "data export"
dbrow(2) = 0
dbrow(3) = "../data_export.aspx"
mtable.rows.add(dbrow)
dbrow = mtable.newrow()
dbrow(0) = 5
dbrow(1) = "user manual"
dbrow(2) = 0
dbrow(3) = "../tasman.pdf"
mtable.rows.add(dbrow)
' begin data main menu

' begin data input module sub menu


dbrow = mtable.newrow()
dbrow(0) = 6
dbrow(1) = "system parameters"
dbrow(2) = 1
dbrow(3) = ""
mtable.rows.add(dbrow)
dbrow = mtable.newrow()
dbrow(0) = 7
dbrow(1) = "node parameters"
dbrow(2) = 1
dbrow(3) = "../node_params.aspx"
mtable.rows.add(dbrow)
dbrow = mtable.newrow()
dbrow(0) = 8
dbrow(1) = "view manual"
dbrow(2) = 1
dbrow(3) = "../construction.aspx"
mtable.rows.add(dbrow)
' end data input module sub menu

' begin system parameter sub menu


dbrow = mtable.newrow()
dbrow(0) = 9
dbrow(1) = "temperature"
dbrow(2) = 6
dbrow(3) = "../temperature.aspx"
mtable.rows.add(dbrow)
dbrow = mtable.newrow()
dbrow(0) = 10
dbrow(1) = "fluid properties"
dbrow(2) = 6
dbrow(3) = "../fluid_properties.aspx"
mtable.rows.add(dbrow)
dbrow = mtable.newrow()
dbrow(0) = 11
dbrow(1) = "miscellaneous"
dbrow(2) = 6
dbrow(3) = "../miscellaneous.aspx"
mtable.rows.add(dbrow)
dbrow = mtable.newrow()
dbrow(0) = 12
dbrow(1) = "system control volumes"
dbrow(2) = 6
dbrow(3) = "../system_control_volumes.aspx"
mtable.rows.add(dbrow)
dbrow = mtable.newrow()
dbrow(0) = 13
dbrow(1) = "system flow"
dbrow(2) = 6
dbrow(3) = "../system_flow.aspx"
mtable.rows.add(dbrow)
dbrow = mtable.newrow()
dbrow(0) = 14
dbrow(1) = "system flux"
dbrow(2) = 6
dbrow(3) = "../system_flux.aspx"
mtable.rows.add(dbrow)
' end system parameter sub menu
end sub
end class

You might also like